تصاویر در اکسس؛ آیا می دانید چطور باید آنها را ذخیره کنید ؟
سلام . به سافت پلاس خوش آمدید . امروز می خواهیم به سراغ آموزش اکسس برویم . موضوع مهمی که می خواهیم در موردش صحبت کنیم نحوه ذخیره کردن تصاویر در اکسس است .
قضیه این آموزش برمی گردد به خیلی وقت پیش. یعنی وقتی که یکی از دوستان یک فایل اکسس را به من داد و گفت که در داخل آن یک بانک اطلاعاتی برای کتابخانه دانشکده طراحی کرده است .
به گفته خودش هم خیلی روی این دیتابیس وقت گذاشته و حسابی هم برایش سنگ تمام گذاشته .
حالا از من می خواست که این دیتابیس را بررسی کنم و نظر خودم را اعلام کنم .
اینقدر هم به کار خودش مطمئن بود که شرط کرده بود به ازای هر ایرادی که توسط من از این دیتابیس پیدا شود یک روز هزینه ناهار دانشکده را برای من پرداخت کند .
من فایل را گرفتم و همانجا روی کامپیوتر دانشکده قرار دادم .
قبل از اینکه به سراغ اکسس بروم و بخواهم آن را اجرایش کنم چند تا سوال از دوست طراحم پرسیدم .
سوالاتی مثل تعداد کتابهایی که اطلاعاتشان ثبت شده ؟
این دیتابیس چند تا جدول دارد ؟ چند تا فرم برایش طراحی شده و تعداد گزارش ها و کوئری هایش چند تاست ؟
پاسخ این سوالات را گرفتم یک حساب و کتاب سرانگشتی کردم و با خودم تخمین زدم این دیتابیس با این تعداد از اطلاعات و اشیای داخلش باید زیر 50 مگابایت حجم داشته باشد .
به سراغ فایل اکسس رفتم و بدون اینکه آن را باز کنم حجمش را بررسی کردم .
160 مگابایت . یعنی بیشتر از 3 برابر آن چیزی که تصورش را می کردم .
حالا نتیجه این دوئل و شرط بندی چه شد ؟
نتیجه اش شد 10 روز ناهار دانشجویی مجانی برای من .
اما اشکال کار دوست من چه بود ؟ چرا اینقدر حجم دیتابیسش بی خود و بی جهت اینقدر زیاد شده بود ؟
دلیلش توی تصاویر و عکس های مربوط به کتابها و نویسنده های مربوط به کتابها بود که آنها را در داخل دیتابیسش ذخیره کرده بود .
البته که ذخیره کردن و استفاده از تصاویر در داخل یک دیتابیس کار اشتباهی نیست بلکه اشتباه در نحوه ذخیره کردن این اطلاعات در داخل دیتابیس است .
درست مثل دوست من که روش نادرستی را برای ذخیره کردن تصاویر مورد نظرش در داخل دیتابیسش انتخاب کرده بود .
حالا در این مطلب می خواهیم راجع به روش های ذخیره کردن تصاویر در داخل اکسس با هم صحبت کنیم .
پس از شما می خواهم که تا انتهای این آموزش با من همراه باشید .
فهرست محتوا
روش های ذخیره کردن تصاویر در اکسس
اول از همه باید یاد بگیرید که اکسس چه روش هایی را برای ذخیره کردن تصاویر در داخل دیتابیس به شما پیشنهاد می دهد .
در یک دسته بندی کلی می شود گفت که برای ذخیره کردن تصاویر در اکسس دو تا راه کلی وجود دارد .
بهترین روش برای ذخیره کردن عکس ها در اکسس کدام است ؟
تا به اینجا یاد گرفتیم که دو تا روش کلی برای ذخیره کردن اطلاعات در داخل اکسس وجود دارد .
اول اینکه اطلاعات خودمان را بطور مستقیم در داخل اکسس ذخیره کنیم . دوم اینکه تصاویر را در خارج از اکسس ذخیره کنیم .
اما اینجا یک سوال پیش می آید . اینکه کدام یک از این روش ها مناسب تر و بهتر است و از کدام روش باید استفاده کنیم .
در پاسخ به این سوال باید گفت که هر کدام از این روش ها مزایا و مشکلات مربوط به خودشان را دارند .
مثلا اگر تصاویر را به طور مستقیم در داخل اکسس ذخیره کنیم مزیتش سادگی در انجام کار است اما یک ایراد بزرگ هم وجود دارد و آن هم این است که در این روش حجم بانک اطلاعاتی شما بی خود و بی جهت بالا خواهد رفت .
اما در روش دوم مراحل کار کمی سخت تر است اما در عوض هم حجم بانک اطلاعاتی شما بالا نخوهد رفت و هم سرعت پردازش اطلاعات شما توسط اکسس کاهش نمی یابد .
در روش اول معمولا ما از قابلیتی به اسم Attachment برای ذخیره کردن تصاویر در اکسس کمک می گیریم .
من قبلا در مطلبی با عنوان چطور با داده نوع Attachment تصاویر در اکسس را ذخیره کنیم راجع به نحوه تصاویر با استفاده از این روش صحبت کرده ام که توصیه می کنم حتما این مطلب را مطالعه کنید .
اما امروز به سراغ روش دوم می رویم . روشی که در آن به کمک برنامه نویسی در اکسس می توانیم قابلیتی را ایجاد کنیم که تصاویر را در داخل دیتا بیس خودمان مدیریت کنیم .
ذخیره سازی تصاویر در اکسس به کمک کدهای VBA
بهترین راهی که با استفاده از آن می توانیم به ذخیره سازی تصاویر در اکسس بپردازیم این است که امکانی را فراهم کنیم که بدون اینکه فایل عکس و یا تصویر خود را در اکسس ذخیره کنیم فقط آدرس محلی را که تصویر ما در آنجا قرار دارد را به اکسس معرفی نماییم .
از این طریق و با اعمال تنظیماتی که در ادامه به آنها اشاره خواهم کرد از اکسس بخواهیم که در صورت نیاز و درخواست ما برای نمایش یک تصویر آدرس مورد نظر را دنبال نموده و تصویر مربوطه را که در محل آدرس داده شده قرار دارد را برای ما به نمایش بگذارد .
بیایید با استفاده از یک مثال عملی مراحل انجام این کار را از ابتدا تا انتها با همدیگر مرور کنیم
برای شروع کار جدول اطلاعات زیر را در نمای طراحی در نظر بگیرید .
ما در این جدول قرار است مشخصات مربوط به دانش آموزان را ثبت نماییم .
تصویر زیر نمایی از این جدول به همراه برخی از اطلاعات فرضی ثبت شده در آن را برای شما به نمایش می گذارد .
اگر دقت نمایید آخرین فیلد از این جدول به نام ” تصویر دانش آموز ” نام گذاری شده است .
این فیلد قرار است آدرس محلی را که تصویر مورد نظر ما برای این دانش آموز را در آنجا ذخیره کرده ایم در خود نگه دارد .
برای این کار نیاز به تنظیماتی داریم . اما این تنظیمات را در داخل این جدول که در داخل فرمی انجام می دهیم که از روی این جدول تهیه می کنیم .
بنابراین در گام دوم به سراغ ایجاد فرم رفته و تمامی آیتم های موجود در این جدول را به فرم خود اضافه نمایید .
تصویر زیر فرم مورد نظر ما را در نمای طراحی نمایش می دهد .
در گام بعدی همچنان که فرم ما در حالت طراحی قرار دارد از سربرگ Design گزینه Image که در تصویر بالا با فلش شماره ۱ مشخص شده است را انتخاب نموده و آن را در محل مناسبی از فرم خود همانند فلش شماره ۲ قرار دهید .
در مرحله سوم نیز یک دکمه به محیط فرم خود اضافه نموده و عنوان آن را “جستجوی تصویر ” در نظر بگیرید .
اکنون تا به پایان آنچه که مورد نظر ماست یعنی برای ذخیره کردن تصاویر در اکسس فقط ۲ مرحله فاصله داریم . در زیر این مراحل را با هم دنبال می کنیم .
تنظیمات مربوط به شی Image در فرم
اول از همه به سراغ شی Image خود رفته و تنظیمات مربوط به آن را بصورت زیر انجام می دهیم .
- فرم خود را در نمای Design باز کنید .
- بر روی شی Image موجود بر روی فرم خود یک کلیک نموده تا به حالت انتخاب درآید .
- از سرب Design بر روی گزینه Property sheet کلیک نمایید تا کادر مربوطه برای شما باز شود .
- در این کادر به سراغ سربرگ Data رفته و در کادر مربوط به گزینه Control Source آن عبارت st-pic را وارد نمایید .
اگر به فرم نمونه خود دقت نمایید st-pic نام فیلدی است که قرار است آدرس مربوط به تصویر هر دانش آموز را در خود نگهدارد .
در واقع اتفاقی که قرار است بیافتد این است که ما از شی Image می خواهیم آدرس موجود در فیلد st-pic فرم حاضر را خوانده و تصویر ذخیره شده مربوطه را بارگزاری و به کاربر نمایش بدهد .
برای این کار نیاز به انجام مرحله دوم از تنظیمات خود داریم .
این تنظیمات را باید بر روی دکمه ای که در حال حاضر در فرم ما قرار دارد اعمال کنیم .
تنظیمات مربوط به شی Command button در فرم
برای اعمال تنظیمات مورد نظر بر روی این دکمه باید کدهای زیر را در رویداد مربوط به On click فرم خود وارد نمایید .
Private Sub Command35_Click()
Dim obj As Object
Dim strfile As String
Dim strfolder As String
Dim varitem As Variant
Set obj = Application.FileDialog(3)
obj.allowmultiselect = True
If obj.show Then
For Each varitem In obj.SelectedItems
strfile = Dir(varitem)
strfolder = Left(varitem, Len(varitem) - Len(strfile))
Me.st_pic = strfolder + strfile
Next
End If
End Sub
کدهای فوق قابلیتی را در اختیار کاربر ما قرار می دهد که با کلیک کردن بر روی دکمه موجود بر روی فرم و با طی کردن چند مرحله ساده فایل تصویر مورد نظر خود را از هر جایی که مدنظر دارد انتخاب نموده و به نرم افزار معرفی کند .
در پایان نیز اکسس تصویر موجود در مسیر معرفی شده توسط کاربر را در فرم مربوطه به نمایش می گذارد .
از طرفی نیز آدرس مسیری که عکس مربوطه در آن قرار دارد در فیلد مربوط به تصویر هر دانش آموز بطور جداگانه ثبت می شود .
به این ترتیب و با طی کردن همین چند مرحله ساده توانستیم به روشی دست یابیم که به کمک آن تصاویر مورد نظر خود را در فایل اکسس به نمایش بگذاریم بدون اینکه نیازی به ذخیره کردن خود فایل تصویر در اکسس داشته باشیم .
البته این نکته را مد نظر قرار دهید که اگر فایل اکسس خود را از کامپیوتر خود به کامپیوتر دیگری منتقل نمایید اگر اکسس شما حاوی تصاویری است که به این طریق به آن ضمیمه کرده اید باید حتما پوشه حاوی تصاویر را نیز به همراه فایل اکسس خود به کامپیوتر جدید منتقل نمایید .
در ثانی در کامپیوتر جدید نیز باید برای نمایش عکس ها در اکسس آدرس محل ذخیره سازی تصاویر را به نحوی تنظیم کنید که برای اکسس قابل شناسایی باشد .
این هم روش دیگری از راههای ذخیره سازی و مدیریت تصاویر در نرم افزار اکسس بود که به آن پرداختیم در زیر می توانید به تماشای ویدیوی همین آموزش بپردازید .
البته راههای دیگری هم علاوه بر این دو راه که در طی این دو مطلب به آنها پرداختیم برای مدیریت و ذخیره کردن تصاویر در اکسس وجود دارد
که در دوره جامع و حرفه ای با عنوان ذخیره کردن تصاویر در اکسس راجع به همه آنها صحبت کرده ام توصیه می کنم برای آشنایی بیشتر و بهتر با این محصول حتما از طریق لینک زیر سری به صفحه این محصول بزنید .
امیدوارم که این مطلب برای شما مفید و کاربردی بوده باشد خوشحال می شوم اگر نظری در باره آن دارید با من درمیان بگذارید .
پرسش هایی که در این مطلب راجع به آنها با هم صحبت کردیم :
بطور کلی دو تا روش برای این کار وجود دارد . روش مستقیم و روش غیر مستقیم .
این بستگی به خود شما و حجم اطلاعات مورد نظرتان در اکسس دارد . اگر حجم اطلاعات شما کم است می توانید تصاویر را بطور مستقیم در داخل اکسس ذخیره کنید
اما اگر حجم اطلاعات و تعداد عکس های شما خیلی زیاد است بهتر است که از روش ذخیره سازی تصاویر بصورت غیر مستقیم استفاده کنید .
مطالب زیر را حتما مطالعه کنید
مفهوم join در SQL و دیتابیس اکسس +ویدئو
ساخت برچسب در اکسس💥چطور آنها را ایجاد و مدیریت کنیم ؟
ریبون ها در اکسس💥از مخفی کردن تا مدیریت کردن آنها
چطوری متن ها و تصاویر را بصورت متحرک در اکسس نمایش بدهیم ؟
فرمت دهی نوشته ها در اکسس | کاربرد + مثالها
۵ ویژگی در فرم های اکسس که کمتر از آنها خبر داشتید .
19 دیدگاه
به گفتگوی ما بپیوندید و دیدگاه خود را با ما در میان بگذارید.
سلام
بسیار عالی
ممنون و متشکر از آموزش های خوب شما
شما مطالب را ریشه ای و دقیق آموزش می دهید
موفق باشید
با سلام و تشکر از حسن نظر و همراهی شما
امیدوارم در ادامه نیز نظرات سازنده خود را در قالب پیشنهادات و انتقادات از ما دریغ نکنید .
به امید موفقیت شما
سلام استاد عالیه
لطفالینک دانلود هم بذارید
با سلام
بنا به در خواست فایل نمونه اضافه شد
ممنون خیلی مفید واقع شد تو سایت های زیادی درباره این موضوع جستجو کردم شما به صوزت رایگان در اختیار قرار دادید خدا قوت
ممنون. استفاده کردم و کارم راه افتاد. با تشکر از شما.
خوشحالم که این مطلب برای شما مفید واقع شد .
باز هم با ما باشید
خیلی عالی بود فقط یه سوال خروجی گرفتن از عکسهای جستجو شده در کوئری چطور ممکنه با همین متد
دریافت فایل نمونه
سلام خیلی عالی بود فقط من فایل نمونه رو نمی دونم از کجا بردارم راهنمایی بفرمایید ممنون
سلام به زودی نمونه فایل قرار داده خواهد شد
باسلام آموزش خیلی عالی بوده ممنون اززحمات شما . فرموده بودید که تدریس کامل ونمونه کدنویسی درسایت موجود است ولی متاسفانه وقتی درسایت وارد میشم هرچند نگاه میکنم آموزش این موضوع نمی بینم لطفا راهنمایی فرمایید
سپاس از آموزش عالی .
سلام استاد گرانقدر
بنده از روی همین آموزش تصاویر را فراخوانی کردم اما بزرگترین مشکلی که به ]ن برخورد کرده ام هنگام گرفتن گزارش از فرم فایل گزارش در قسمت picرا به صورت آدرس دهی نشان می دهد آیا راه حلی برای حل این مشکل وجود دارد.ممنون میشوم اگر راهنمایی کنید.
یک راه کار ساده برای این کار وجود دارد که در اولین بروز رسانی این مطلب قرار داده خواهد شد
سلام استاد گرامی
.تشکر خودم را بابت حوصله و وقتی که به ما می دهیدکمال تشکر را دارم.بهتیرن سایت موجود در دنیا وبهترین استاد در دنیا کمال تشکر واحترام را بابت تشکر از شما را دارم.
سلام ممنون از لطف و همراهی شما
سلام استاد گرامی
بنده چند وقت پیش یک سوال از شما درباره اینکه با این روشی که شما در بالا آموزش می دهید. بعد از گزارش گیری تصاویر نمایش داده نمی شود فقط آدرس تصاویر نمایش داده می شود .تشکر خودم را بابت حوصله و وقتی که به ما می دهیدکمال تشکر را دارم.
سلام پاسخ سوال تون توی ویدئوی آخر صفحه قرار داده شده امیدوارم که پاسخ سوالتون رو دریافت کرده باشید .